const { host } = require('../../mockConfig')

Page({
  data: {
    address: '点击选择，要勾选哦~',
    isSubmit: false,
    isSucc: false
  },

  onReady() {
    // 定义的静态数据：不会通过setData来修改，这个数据比较轻量
    this.staticData = {
      type: 'buy'
    }
  },

  handleAddressTap() {
    wx.chooseLocation({
      success: ({address, latitude, longitude}) => {
        this.setData({
          address,
          latitude,
          longitude
        })
      }
    })
  },

  radioChange({detail: { value }}) {
    this.staticData.type = value
  },

  handleMessage({detail: { value }}) {
    this.staticData.message = value
  },

  handleContact({detail: { value }}) {
    this.staticData.contact = value
  },

  _validate(title) {
    wx.showToast({
      title,
      icon: 'error',
      duration: 2000
    })
  },

  handleSubmit() {
    
    // 验证逻辑
    // 用户不填写地址
    if (this.data.address === '点击选择，要勾选哦~') {
      this._validate('请选择地址')
      return
    }

    // 用户没有填写说明
    if (!this.staticData.message) {
      this._validate('请填写说明')
      
      return
    }

    // 用户没有填写联系方式
    if (!this.staticData.contact) {
      this._validate('请填写联系方式')
      return
    }


    // 表单提交逻辑
    const data = {
      ...this.data,
      ...this.staticData
    }

    wx.request({
      url: `${host}/data`,
      data,
      method: 'post',
      header: {
        'content-type': 'application/x-www-form-urlencoded'
      },
      success: (res) => {
        console.log(0)
        this.setData({
          isSucc: true
        })
      },
      fail: () => {
        this.setData({
          isSucc: false
        })
      },
      complete: () => {
        this.setData({ isSubmit: true })
      }
    })
  },

  // notice button tap
  handleNoticeTap() {
    if (this.data.isSucc) {
      wx.navigateBack()
    } else {
      this.setData({
        isSubmit: false
      })
    }
  }
})